The present invention relates to the field of communication between devices in a computer system; more particularly, the present invention relates to the use of a positive logic single wire bus for communication between devices (e.g., a host and a battery) and to bus speed negotiation schemes usable with one-wire or multi-wire buses.
Data buses are found in virtually all computers and computer-based products, serving to interconnect a computer""s central processing unit to RAM, for example, or to enable communications between a microprocessor and an application-specific integrated circuit (ASIC), and/or to peripheral devices such as an intelligent battery or a display. Some of these data buses are single wire buses. Today, single wire buses that support communication between multiple devices use a wired-or technique. Typically, the bus is held high by a pull-up resistor or other current source. When a device wishes to use the bus for communication, the bus is actually driven low. Single wire buses are usually used to either transfer data between devices or send a clock signal. One limitation of these buses is that devices on a single wire bus do not obtain power from the bus while using the bus for communication.
Low-cost, battery-powered products such as cellular phones or handheld computers typically employ a one-wire data bus, with all bus communications conducted at a single, fixed bus speed. One such bus, produced by Dallas Semiconductor Corp. of Dallas, Tex. and described in the product data sheets for their DS1820 xe2x80x9c1-WIRExe2x80x9d Digital Thermometer (DS1820 data sheet, pp. 9, 16-19, and 24-26 (Mar. 5, 1998)), is a one-wire data bus that is held at a logic xe2x80x9chighxe2x80x9d with a pull-up resistor when idle, and is actively pulled-down to a logic xe2x80x9clowxe2x80x9d state with a current source. As a result, the bus consumes power when conveying a logic xe2x80x9clowxe2x80x9d state or when switching, which may be undesirable in battery-powered products. The bus also operates at a fixed speed, dictated by the bus"" AC Electrical Characteristics table (DS1820 Data Sheets, p. 25). Devices that are incapable of operating at the specified speed will not communicate properly over the bus.
Another one-wire data bus is produced by Benchmarq Microelectronics, Inc. of Dallas, Tex. and is described in the data sheet for their bq2018 xe2x80x9cPOWER MINDERxe2x80x9d IC (bq2018 data sheet, pp. 6 and 10-13 (September 1997)). This bus also has a dictated, fixed speed, with no method of changing bus speed to accommodate a variety of device communication speeds or a changing configuration of devices, greatly limiting the variety of devices that can be connected to the bus.
The communication speed capabilities of devices designed to communicate over a data bus vary widely. It is also often desirable to alter the configuration of the devices connected to a data bus. Neither of these factors are satisfactorily accommodated by the fixed speed one-wire data buses presently available.
Although there are a number of single wire buses, each have one or more limitations when being used to communicate with low-end devices such as batteries. Thus, a need exists for a single wire bus that overcomes the limitations of the prior art buses. Also, there is a need for a bus negotiation scheme that is operable over a one-wire data bus, which automatically adjusts the bus speed to accommodate the communication capabilities of all the devices coupled to the bus at any one time.
A system having a first device and a second device coupled to a positive logic single wire bus is described. The second device is operable to receive power from the single wire bus that is due to the first device driving the bus. The second device also communicates with the first device using the single wire bus.